<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
<head>
    <title>添加更新banner</title>
    <meta name="_csrf" th:content="${_csrf.token}"/>
	<!-- default header name is X-CSRF-TOKEN -->
	<meta name="_csrf_header" th:content="${_csrf.headerName}"/>
    <div th:replace="head"></div>
    <link rel="stylesheet" type="text/css" th:href="@{/plugins/webuploader/webuploader.css}"/>
</head>
<body class="hold-transition skin-blue sidebar-mini ">
<div class="wrapper">
    <div th:replace="header"></div>
    <div th:replace="sidebar"></div>
    <!-- Content Wrapper. Contains page content -->
    <div class="content-wrapper">
        <!-- Main content -->
        <section class="content">
            <div class="row">
                <div class="col-md-12">
                    <!-- Horizontal Form -->
                    <div class="box box-info">
                        <div class="box-header with-border">
                            <h3 class="box-title">广告管理</h3>
                        </div>
                        <!-- /.box-header -->
                        <!-- form start -->
                        <form class="form-horizontal" th:action="@{${api}}" method="post">
                            <input type="hidden" th:name="${_csrf.parameterName}" th:value="${_csrf.token}"/>
                            <div class="box-body">
                                <div class="form-group">
                                    <label class="col-sm-2 control-label">banner名称</label>
                                    <div class="col-sm-10">
                                        <input type="text" name="title" th:value="${banner}?${banner.title}"
                                               class="form-control" placeholder="名称" maxlength="30"/>
                                    </div>
                                </div>
                                <div class="form-group">
                                    <label class="col-sm-2 control-label">广告url</label>
                                    <div class="col-sm-10">
                                        <input type="text" name="url" th:value="${banner}?${banner.url}"
                                               class="form-control" placeholder="广告url" maxlength="64"/>
                                    </div>
                                </div>
                                <div class="form-group">
                                    <label class="col-sm-2 control-label">图片</label>
                                    <div id="uploader-demo" class="col-sm-10">
                                        <!--用来存放item-->
                                        <div id="fileList" class="uploader-list">
                                        <div class="file-item thumbnail upload-state-done"><img width="240px" height="200px" th:src="@{${banner}?${banner.imgUrl}}"/></div>
                                        </div>
                                        <div id="filePicker">选择图片</div>
                                    </div>
                                </div>

								<input id="imgUrl" name="imgUrl" type="hidden" th:value="${banner}?${banner.imgUrl}"/>
                                <br/><br/>
                            </div>
                            <!-- /.box-body -->
                            <div class="box-footer" style="text-align: center;">

                                <button type="submit" class="btn btn-info">Submit</button>
                            </div>
                            <!-- /.box-footer -->
                        </form>
                    </div>
                    <!-- /.box -->
                </div>
            </div>
            <!-- /.row -->
        </section>
        <!-- /.content -->
    </div>
    <!-- /.content-wrapper -->
    <div th:replace="footer"></div>
</div>
<!-- ./wrapper -->
<div th:replace="script"></div>
<script th:src="@{/plugins/webuploader/webuploader.min.js}"></script>
<script type="text/javascript">
    //初始化Web Uploader
    var uploader = WebUploader.create({
        // 选完文件后，是否自动上传。
        auto: true,
        // swf文件路径
        swf: '/plugins/webuploader/Uploader.swf',
        // 文件接收服务端。
        server: '/media/put',
        // 选择文件的按钮。可选。
        // 内部根据当前运行是创建，可能是input元素，也可能是flash.
        pick: {id:'#filePicker',multiple:false},
        // 只允许选择图片文件。
        accept: {
            title: 'Images',
            extensions: 'gif,jpg,jpeg,bmp,png',
            mimeTypes: 'image/*'
        }
    });
    var token = $("meta[name='_csrf']").attr("content");
    var header = $("meta[name='_csrf_header']").attr("content");
    var csrfHeader = {};
    csrfHeader[header] = token;
    uploader.on('uploadBeforeSend', function(obj, data, headers) {
        $.extend(headers, csrfHeader);
    });
    //当有文件添加进来的时候
    uploader.on('fileQueued', function (file) {
        var $li = $(
                '<div id="' + file.id + '" class="file-item thumbnail">' +
                '<img/>' +
                '<div class="info">' + file.name + '</div>' +
                '</div>'
            ),
            $img = $li.find('img');
        // $list为容器jQuery实例
        $("#fileList").html($li);
        // 创建缩略图
        // 如果为非图片文件，可以不用调用此方法。
        // thumbnailWidth x thumbnailHeight 为 100 x 100
        uploader.makeThumb(file, function (error, src) {
            if (error) {
                $img.replaceWith('<span>不能预览</span>');
                return;
            }
            $img.attr('src', src);
        }, 100, 100);
    });
    //文件上传过程中创建进度条实时显示。
    uploader.on('uploadProgress', function (file, percentage) {
        var $li = $('#' + file.id),
            $percent = $li.find('.progress span');
        // 避免重复创建
        if (!$percent.length) {
            $percent = $('<p class="progress"><span></span></p>')
                .appendTo($li)
                .find('span');
        }
        $percent.css('width', percentage * 100 + '%');
    });
    // 文件上传成功，给item添加成功class, 用样式标记上传成功。
    uploader.on('uploadSuccess', function (file,response) {
        $('#' + file.id).addClass('upload-state-done');
        $('#imgUrl').val(response.data.value);
    });
    // 文件上传失败，显示上传出错。
    uploader.on('uploadError', function (file) {
        var $li = $('#' + file.id),
            $error = $li.find('div.error');
        // 避免重复创建
        if (!$error.length) {
            $error = $('<div class="error"></div>').appendTo($li);
        }
        $error.text('上传失败');
    });
    // 完成上传完了，成功或者失败，先删除进度条。
    uploader.on('uploadComplete', function (file) {
        $('#' + file.id).find('.progress').remove();
    });
</script>
</body>
</html>